#include "EvtData.h"

/*Function Implementations Below*/

EvtData::EvtData()
{
  //std::cout<<"EvtData::EvtData() called"<<std::endl;
  EvtData::jets = new std::vector<Jet>;
  EvtData::muons = new std::vector<Muon>;
  EvtData::electrons = new std::vector<Electron>;
  EvtData::MET=-9.0;
  EvtData::Ntrks=-9;
  EvtNr=-9;
  lbNr=-9;
  RunNr=-9;
}

EvtData::~EvtData()
{
  //delete EvtData::atree;
  //std::cout<<"EvtData destructor called"<<std::endl;
  delete EvtData::jets;
  delete EvtData::muons;
  delete EvtData::electrons;
}

/*
unsigned int EvtData::getNentries()
{
 std::cout<<"getNentries() not overridden exiting ..."<<std::endl;
 exit(8);
return 0;
}
*/



std::vector<Muon>* EvtData::getMuons(){
  
  return EvtData::muons;
}

std::vector<Electron>* EvtData::getElectrons(){
  
  return EvtData::electrons;
}

std::vector<Jet>* EvtData::getJets(){
  
  return EvtData::jets;
}

double EvtData::getMET(){
return EvtData::MET;
}

int EvtData::getNtrks()
{
return Ntrks;
}

/*
void EvtData::FillEvtData(unsigned int ientry){
 
  std::cout<<"FillEvtData not overridden exiting .."<<std::endl;
  exit(8);
 
}
*/



void EvtData::ClearEvtData(){
  
  EvtData::electrons->clear();
  EvtData::jets->clear();
  EvtData::muons->clear();
  EvtData::MET=-9.0;
}

int EvtData::getEvtNr(){
	return EvtNr;
}

int EvtData::getlbNr(){
	return lbNr;
}
int EvtData::getRunNr(){
	return RunNr;
}

void EvtData::setEvtNr(int N){
		EvtNr=N;
}

void EvtData::setlbNr(int N){
	lbNr=N;
}

void EvtData::setRunNr(int N){
	RunNr=N;
}
/******************************************************/
